﻿#region Copyright information
// 
// Copyright © 2005-2013 Yongkee Cho. All rights reserved.
// 
// This code is a part of the Biological Object Library and governed under the terms of the
// GNU Lesser General  Public License (LGPL) version 2.1 which accompanies this distribution.
// For more information on the LGPL, please visit http://bol.codeplex.com/license.
// 
// - Filename: DistributionClusterer.cs
// - Author: Yongkee Cho
// - Email: yongkeecho@gmail.com
// - Date Created: 2012-12-08 8:26 AM
// - Last Modified: 2013-01-25 3:59 PM
// 
#endregion
using System;
using System.Collections.Generic;
using System.Linq;
using BOL.Maths.Distributions;

namespace BOL.Algorithms.Clustering
{
    public class DistributionClusterer : ClustererBase<double>, IDistributionClusterer
    {
        #region Public properties

        public IMultivariateDistribution<double> Distribution { get; private set; }

        #endregion

        #region Constructor

        public DistributionClusterer(IMultivariateDistribution<double> distribution, Func<IEnumerable<double>, IEnumerable<double>, double> distanceFunction)
            : base(distanceFunction)
        {
            Distribution = distribution;
        }

        #endregion

        #region Public methods

        public override IEnumerable<IGrouping<int, TSource>> Cluster<TSource>(IEnumerable<TSource> sources, Func<TSource, double[]> pointSelector)
        {
            throw new NotImplementedException();
        }

        #endregion
    }
}